03. Getting Started
Project Setup
The project will require the use of Ubuntu Linux (the operating system of Carla) and a new simulator. To reduce installation difficulties, we have provided an in-browser Workspace for you to work with. You can find instructions for the Workspace here, and the Workspace can be found here.
If you prefer not to use the Workspace, follow the steps below to get set up:
Because ROS is used, you will need to use Ubuntu to develop and test your project code. You may use
- Ubuntu 14.04 with ROS Indigo
- Ubuntu 16.04 with ROS Kinetic
You are welcome to use your own Ubuntu installation or virtual machine (unsupported), or you can use the VM provided here. The provided VM has ROS and Dataspeed DBW installed already.
The project repo can be found here. Clone or download the project code before the next sections so you can follow along with the code descriptions! In the README, you should be able find any additional dependencies needed for the project.
The system integration project uses its own simulator which will interface with your ROS code and has traffic light detection. You can download the simulator here. To improve performance while using a VM, we recommend downloading the simulator for your host operating system and using this outside of the VM. You will be able to run project code within the VM while running the simulator natively in the host using port forwarding on port
4567. For more information on how to set up port forwarding, see the end of the classroom concept here.The rubric for this project is fairly simple - does the vehicle successfully navigate the track? If you are in the three-term version, check the rubric here, or for the two-term version see the rubric here.
Traffic Lights 2
Note that the latest version of the simulator has two test tracks:
- A highway test track with traffic lights
- A testing lot test track similar to where we will run Carla
To use the second test lot, you will need to update your code to specify a new set of waypoints. We'll discuss how to do this in a later lesson. Additionally, the first track has a toggle button for camera data. Many students have experienced latency when running the simulator together with a virtual machine, and leaving the camera data off as you develop the car's controllers will help with this issue.
Finally, the simulator displays vehicle velocity in units of mph. However, all values used within the project code are use the metric system (m or m/s), including current velocity data coming from the simulator.
Group formation
For this project you may work in groups of up to 5 students! If you would like to serve as the Team Lead for a group, add your name in the Team Lead section of the sign up sheet here. Otherwise, find a team with additional space and add your name as a team member. Please sign up using the correct tab for your cohort. Note that we'd like a minimum team size of 4, so if you find that your team is not large enough, you can merge with another team on the spreadsheet.
Udacity will be relativley hands-off in the team formation process, so you are welcome to structure the team and divide the work as you see fit. Feel free to set up meeting times, contribute to a shared repo, or more!
If you would like a refresher on GitHub to get started with your team, Udacity has a brief GitHub tutorial to get you started. Udacity also provides a free course on using GitHub for collaboration, as well as a more detailed free course on using git and GitHub.